#ifndef MODE_H
#define MODE_H

#include <stdio.h>
#include "lvgl/lvgl.h"
#include <stdbool.h>
#include "animation.h"
#include "indicators.h"
#include "gear.h"
#include "ui/ui.h"
#include "tires.h"
#include <pthread.h>

// 驾驶模式枚举
typedef enum {
    MODE_NORMAL = 0,   // 普通模式
    MODE_ECO = 1,      // 环保模式
    MODE_SPORT = 2,    // 竞速模式
    MODE_NIGHT = 3,    // 夜间模式
    MODE_SMART = 4     // 智能模式
} DrivingMode;

// 模式名称数组
extern const char *mode_names[];

// 全局UI roller对象
extern lv_obj_t* ui_Roller1;

// 当前驾驶模式
extern DrivingMode current_driving_mode;

// 函数声明
void init_driving_modes();
void change_driving_mode(DrivingMode new_mode);
const char *get_current_mode_name();
void setup_mode_roller();

#endif // MODE_H